'''
    编程思想：
        面向对象：找对象 让对象完成相应的功能实现
        面向过程：分析过程

        做饭 -》  定外卖     面向对象
        自己做：买菜  洗菜  切菜  炒菜    面向过程

    定义类：一类具有相同事务抽象化的概念   比如  猫 车 狗。。。
        属性：变量
        行为：函数
    class  类名称（）：

    self ： 表示当前对象

    创建对象：对象名称 = 类名称（参数。。。）
    调用属性和函数
        属性  对象  属性名称
    函数：
        对象函数：只能被对象调用   有默认参数  self表示当前对象
        类函数 ：  可被类调用  也可内对象调用 有默认参数 cls：  表示当前类
        静态函数：既可以被对象调用  也可被类调用  没有默认参数
'''

class Car():
    name ='车'
    type ='兰博基尼'
    def __init__(self,color,price):
        self.color = color
        self.price = price
    def run(self):
        print('车在跑')
    @classmethod
    def Shache(cls):
        print('刹车成功')
    @staticmethod
    def test():
        print('静态函数')
if __name__ == '__main__':
    # 创建对象
    car = Car('白色','20w')
    # 类属性
    print(car.name)
    print(car.color)
    # 对象属性
    print(car.price)
    print(car.color)


    car2 = Car('黑色','80w')
    # 把=号左边的值赋值给右边
    car2.color = '绿色'
    print(car2.price)
    # 对象调用对象
    car2.run()
    # 对象调用类函数
    car2.Shache()
    car.Shache()
    # 类调用类函数
    Car.Shache()

    # 静态函数即可类调用也可对象调用
    Car.test()
    car.test()


